IF exists(SELECT * FROM dbo.sysobjects WHERE name='fr_XMLgevraagdeVakCijfersCommentaar' AND xtype='P') 
BEGIN
	DROP PROCEDURE fr_XMLgevraagdeVakCijfersCommentaar
END
GO

CREATE  procedure fr_XMLgevraagdeVakCijfersCommentaar(
	@versie float,@aard char(1),@periode char(2),
	@inschrijvingsNr char(7),@groepsnaam varchar(20),
	@hoofdNr int,
	@test bit)
as
set nocount on
-----------------------------------------------------------
--  Alle vakken die expliciet voorkomen in de rapportdefinitie,
--  worden opgenomen in een tussen-tabel.
-----------------------------------------------------------
if (@test=1)
begin
  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  values(@versie,@hoofdNr,'0','0','<vakken>')

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select distinct @versie,@hoofdNr,vak,'0','<' + vak + '><leraar>vakleraar</leraar>'
		+ '<naam>vaknaam</naam>'
	from  fr_individueleRekenwijze as i
  	  where i.periode = @periode
  		and i.aard = @aard
    		  and i.groepsnaam = @groepsnaam

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select distinct @versie,@hoofdNr,vak,'1','<' + code + '>99</' + code + '>' 
	from  fr_individueleRekenwijze as i
  	  where i.periode = @periode
  		and i.aard = @aard
    		  and i.groepsnaam = @groepsnaam

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select distinct @versie,@hoofdNr,vak,'1','<' + code + 'gem>77</' + code + 'gem>' 
	from  fr_individueleRekenwijze as i
  	  where i.periode = @periode
  		and i.aard = @aard
    		  and i.groepsnaam = @groepsnaam

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select distinct @versie,@hoofdNr,vak,'3','</' + vak + '>' 
	from  fr_individueleRekenwijze as i
  	  where i.periode = @periode
  		and i.aard = @aard
    		  and i.groepsnaam = @groepsnaam

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  values(@versie,@hoofdNr,'ZZZ','0','</vakken>')
end
else
begin
  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  values(@versie,@hoofdNr,'0','0','<vakken>')

  declare @vakken table(vak char(20),
		  code varchar(20),
		    cijfer varchar(20),	
		      leraar varchar(100),
		         vaknaam varchar(100))
  insert into @vakken 
  select c.vak,c.code,c.cijfer,v.volleNaam,v.vakNaam
	from (select vak,code,cijfer from fr_individueleCijfers 
		where inschrijvingsNr=@inschrijvingsNr
		  and periode=@periode
		    and aard = @aard)as c
	left join hulpIndividueleLeraarsVakcodes(@inschrijvingsNr) as v
		on c.vak=v.vakcode

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select distinct @versie,@hoofdNr,vak,'0','<' + vak + '>' + '<leraar>' + leraar + '</leraar>'
		+ '<naam>' + vakNaam + '</naam>'
  from @vakken as v

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select @versie,@hoofdNr,v.vak,'1','<' + code + '>' + cijfer + '</' + code + '>' 
  from (select distinct vak from @vakken) as v
  left join fr_individueleCijfers as i
    on v.vak = i.vak
  where i.periode = @periode
    and i.aard = @aard
      and i.inschrijvingsNr = @inschrijvingsNr

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select @versie,@hoofdNr,v.vak,'2','<' + i.code + 'gem>' + i.cijfer + '</' + i.code + 'gem>' 
  from (select distinct vak from @vakken) as v
  left join fr_collectieveCijfers as i
    on v.vak = i.vak
    where i.periode = @periode
      and i.aard = @aard
        and i.inschrijvingsNr = @inschrijvingsNr


  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select @versie,@hoofdNr,fc.vak,'1','<klasleraar periode="' + fc.periode + '">'
		+ isNull(tekst,'') + '</klasleraar>' 
    from fr_commentaar as fc
        where fc.inschrijvingsNr = @inschrijvingsNr 
		and fc.periode = @periode
		and type ='k'

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select @versie,@hoofdNr,fc.vak,'2','<vak periode="' + fc.periode + '">'
		+ isNull(tekst,'') + '</vak>' 
    from fr_commentaar as fc
        where fc.inschrijvingsNr = @inschrijvingsNr 
		and fc.periode = @periode
		and type ='v'

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select @versie,@hoofdNr,fc.vak,'2','<detail periode="' + fc.periode + '" code="' + fc.code + '">'
		+ isNull(tekst,'') + '</detail>' 
    from fr_commentaar as fc
        where fc.inschrijvingsNr = @inschrijvingsNr 
		and fc.periode = @periode
		and type ='d'

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  select distinct @versie,@hoofdNr,vak,'9','</' + vak + '>'
  from @vakken

  insert into fr_tussen(versie,hoofdNr,tussenNr,volgNr,tekst)
  values(@versie,@hoofdNr,'ZZZ','0','</vakken>')
end